/**
 * 
 */
package business;

import business.EmprestimoBO;
import dao.EmpregadoDAO;
import static org.junit.Assert.*;

import java.math.BigDecimal;

import model.Empregado;
import model.Emprestimo;

import org.junit.After;
import org.junit.AfterClass;
import org.junit.Before;
import org.junit.BeforeClass;
import org.junit.Test;

/**
 *
 */
public class EmprestimoBOTestValorPrestacao {

    public EmprestimoBOTestValorPrestacao(){}
    
    @BeforeClass
    public static void setUpClass() throws Exception {
    try {
        Empregado empregado = new Empregado(1l, "QualquerNome", true, new BigDecimal(5000.00), "14134800714", "01/02/91", "01/02/91", "");
        EmpregadoDAO.getInstance().incluir(empregado);
        } catch (Exception ex) {
            fail("Falha na inclusão de um empregado");
        }
    }

    @AfterClass
    public static void tearDownClass() throws Exception {
    }

    @Before
    public void setUp() {
    }

    @After
    public void tearDown() {
    }
    
    @Test
    public void testPrestacaoQuandoPrestacaoIgualADois() throws Exception{
    	
    	int numPrestacoes = 2;
    	BigDecimal prestacaoEsperada = new BigDecimal(537.80);
        
        Empregado empregado = new Empregado(1l, "QualquerNome", true, new BigDecimal(5000.00), "14134800714", "01/02/91", "01/02/91", "");
        
        Emprestimo emprestimo = new Emprestimo(empregado, new BigDecimal(1000.00), null, null, numPrestacoes, null, null);
        emprestimo = EmprestimoBO.getInstance().solicitaEmprestimo(emprestimo);

    	BigDecimal prestacao=emprestimo.getValorPrestacao();
    	
    	
    	assertEquals(prestacaoEsperada,prestacao);
    }
	
}
